1. Field of the Invention
The present invention relates to a mobile terminal having a communication function, and to a method of updating the software thereof.
2. Description of the Related Art
Currently, cellular phones, which are a kind of mobile terminals, have various functions, such as telephone calls, electronic mails, the Web browsing, personal information management, memorandums, taking a picture with a camera, etc., and are carried around by many users. Also, some types of cellular phones having a function of receiving a radio and television broadcast, a function of playing back music, etc., have become available recently.
Regardless of the number of such functions, all cellular phones are controlled by computer programs (software in a broad sense). Such a computer program is stored in a memory contained in a cellular phone.
In general, version upgrades are carried out for software in order to fix defects called bugs, to add functions, and to make improvements.
Upgrading software for an electronic apparatus is normally carried out by installing necessary software from a medium recording a new software version in the electronic apparatus, or by replacing an internal ROM. However, it is not possible to ask the user to perform such an operation, because there are so many cellular phone users having no knowledge of computers.
Accordingly, the models having a function of rewriting the software of a cellular phone using OTA (Over The Air) capability is on the market in these days. “OTA” means the communication by radio using a communication function of a cellular phone. Thus, it is possible to update software without imposing a special burden on users, dealers, etc. Specifically, the rewriting of the software is carried out by downloading the differential file between the version-up software and the main-unit program of the cellular phone, and by updating only the difference of the software of the cellular-phone main unit.
To date, there have been various problems with the implementation of a software update function. For example, after software update processing is started, the main-unit program is rewritten. Thus, if the update processing has been successful, the cellular phone functions as a new version. However, if the update processing has failed, it becomes difficult even to turn on the power to the cellular phone. That is to say, if the update processing has failed because of a defect of a memory device or a failure in writing, it become difficult for the main-unit program to be restored. In order for the main-unit program to be restored, it is necessary to execute loading the software through a known serial cable. Thus, it becomes difficult for a general user to execute the processing.
In an electronic apparatus controlling the operations thereof by firmware, the following technique has been proposed (Japanese Unexamined Patent Application Publication No. 2005-235110). In the technique, when the program is updated by the update data of the firmware received through an external connection interface, in order to immediately restore a destroyed or lost program at the time of the update processing failure back to a state capable of using the original functions, the program object to be updated is saved in an external server. After the update processing is performed, if the processing has failed, the saved object before the update is received from the external server to be written back into the ROM.